'''
”json.txt”文件中有用户的注册信息
（1）.读取json.txt中的信息
（2）.为用户编写UserInfo类，对Json数据中的每个对象进行封装
（3）.使用魔术方法__str__可以输出每个用户的基本信息
（4）.将Json数据中所有的用户信息进行数据封装并存入列表中
（5）.遍历列表输出所有的用户信息

'''
import json
textFile = open('json.txt','r',encoding='utf-8')
data = json.dumps(json.load(textFile))
data = json.loads(data)
print(data)

# UserInfo类
class UserInfo:
    # 类属性 name qq password email
    name = ''
    qq = ''
    email = ''
    password = ''
    def __str__(self):
        return('用户信息:姓名: {}, QQ号: {}, email: {}, QQ密码: {}'.format(self.name,self.qq,self.email,self.password))
    def __init__(self,name,qq,email,password):
        self.name = name
        self.qq = qq
        self.email = email
        self.password = password

length = len(data)
list = []
for i in range(length):
    # 获取json内容
    name = data[i]['name']
    qq = data[i]['qq']
    email = data[i]['email']
    password = data[i]['password']
    userInfo = UserInfo(name,qq,email,password)
    # 加入列表
    list.append(userInfo)

for s in list:
    print(s)
